<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script>
    /**
     * 求数组的元素最大值
     * @param array 必须是一个数组对象
     */
    function max(array) {
        // console.log(typeof array);
        // 判断对象是否为数组的方式一
        // if (array instanceof Array) {
        //     console.log("是一个数组");
        // }
        // 方式二，推荐
        if (!Array.isArray(array)) {
            // console.log("不是一个数组");
            // 当不是数组时，直接报错
            throw new Error("参数 array 必须是一个数组");
        }
        // 最大值的实现
        let max = array[0]; // let max = undefined[0];相当于undefined.0
        for (let i = 0; i < array.length; i++) {
            if (max < array[i]) max = array[i];
        }
        console.log("max", max);
    }

    // max(undefined);
    let arr = [1, 3, 5];
    let obj = {a: 1, b: 2, c: 3};
    max(arr);
    max(obj);
</script>
</body>
</html>